Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

inputs.toml and support libRR intracellulars #100

Merged
merged 1 commit into from
Mar 3, 2025
Merged

Conversation

drbergman
Copy link
Owner

No description provided.

Copy link

codecov bot commented Feb 24, 2025

Codecov Report

Attention: Patch coverage is 95.80675% with 46 lines in your changes missing coverage. Please review.

Project coverage is 94.38%. Comparing base (9233b45) to head (0c4a204).
Report is 2 commits behind head on development.

Files with missing lines Patch % Lines
src/VCTComponents.jl 89.18% 16 Missing ⚠️
src/VCTClasses.jl 95.90% 5 Missing ⚠️
src/VCTCompilation.jl 94.04% 5 Missing ⚠️
src/VCTDeletion.jl 92.72% 4 Missing ⚠️
src/VCTDatabase.jl 98.13% 2 Missing ⚠️
src/VCTExport.jl 83.33% 2 Missing ⚠️
src/VCTICCell.jl 81.81% 2 Missing ⚠️
src/VCTICECM.jl 81.81% 2 Missing ⚠️
src/VCTModule.jl 88.23% 2 Missing ⚠️
src/VCTProjectConfiguration.jl 97.22% 2 Missing ⚠️
... and 3 more
Additional details and impacted files
@@               Coverage Diff               @@
##           development     #100      +/-   ##
===============================================
- Coverage        94.85%   94.38%   -0.48%     
===============================================
  Files               27       29       +2     
  Lines             3696     3723      +27     
===============================================
+ Hits              3506     3514       +8     
- Misses             190      209      +19     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@drbergman drbergman force-pushed the librr-macros branch 2 times, most recently from 6c8813d to ce3f7a4 Compare March 3, 2025 15:44
- create developer's guide
  - start using `#!` for comments to stay
  - this is only info in guide for now
- broader use of `haskey`
- `InputFolder` class now includes: `location`, `basename`, `required`, `varied`, and `path_from_inputs`
  - Inner constructors help initialize from just `location` + (`id` OR `folder` OR both)
- `InputFolders` now a wrapper for a `NamedTuple` where the keys are locations (stored in `project_locations.all`) and the values are of type `InputFolder`
  - users are expected to use either the keyword arg constructor (`InputFolders(; kwargs...)`) or the parse-time defined `InputFolders(<required_locations...>; <optional_locations...>)` where the `inputs.toml` determines the parameter/keyword arg names
  - users could create a vector of pairs, but this is expected to be used internally
  - `getindex` is implemented to allow for `input_folders[:config]` to access the values of the `NamedTuple`
- `VariationID` replaces `VariationIDs` and is now just a wrapper for a `NamedTuple`
  - handles construction of default variation ids based on the folder ID being -1 or not
  - `getindex` implemented to allow for `variation_id[:config]` to access the id for the config variation
- better checks on instantiating `Simulation`s
- make use of `project_locations` in just so many helpful ways
- functions to simplify adding output types to vct.db
- one function each for setting table names (`"$(loc)s"`), loc ids (`"$(loc)_id"`) and loc var ids (`"$(loc)_variation_id"`)
- support for roadrunner sims!
  - will download roadrunner if needed and then go ahead and run the sims
  - checks for environment variables needed, sets in the julia runtime if need be, and helps the user to fix this
  - printls helpful message if not present
- `locationPath` to standardize how to access `inputs`
- starting to support components that containt, well, components of simulation inputs
  - these will live in `data/components` and can be used outside of `run` to set up different input/location folders
  - added `VCTComponents.jl` (though it could be renamed to `VCTIntracellularComponents.jl`) to manage combining of components together
- standardize loading of input folders using `createXMLFile`
- `inputs.toml` now allows users to decide on the structure of their project at runtime
- rewrite of VCTDatabase using inputs.toml
- `initializeVCT` replaced by `initializeModelManager` and can accept no arguments to initialize from the current directory
- `make clean` only in the `temp_physicell_dir`
- compilation `cmd` gets the `ENV` passed in (so the librr var can be included) and also the `temp_physicell_dir` to make sure everything is in that location
- print entire compile `cmd` rather than just the `cflags` (though first get rid of the env and dir info because those make it hard to read)
- on compilation failure, print the log and err to console
- `prepareInputFolder` function now gives a generic interface for initializing each input
- `cmd` for running the sim now has `env` and `dir` set to ensure necessary flags are passed in and that it is being run from teh PHysiCell directory
- `--chdir=$(physicell_dir)` now set for `sbatch` command to make sure it is being run from that directory. still need to see if the env is being properly set there or if that requires extra attention
- bundle results of `addVariations` into an `AddVariationsResult` type so those only output one thing
- `sqliteDataType(ev::ElementaryVariation)` to standardize how all database types are determined
- VCTComponents doc
@drbergman drbergman changed the title massive changes for using inputs.toml inputs.toml and support libRR intracellulars Mar 3, 2025
@drbergman drbergman merged commit 3349e13 into development Mar 3, 2025
8 checks passed
@drbergman drbergman deleted the librr-macros branch March 3, 2025 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant